import axios from 'axios'
import qs from 'qs'
import { Toast } from "antd-mobile";

let baseUrl = '';
let imgPre = ""
// 配置环境
if (process.env.NODE_ENV === 'development') {
    console.log('---开发环境---')
    baseUrl = '/api'
    imgPre = "http://localhost:1000"
    // 开发环境
} else {
    // 生产环境
}
export { imgPre };
// 请求拦截
axios.interceptors.request.use(config => {
    // console.log(config)
    // 请求拦截的逻辑
    config.url = baseUrl + config.url;

    // 取出本地token
    let token = sessionStorage.getItem('userinfo') ? JSON.parse(sessionStorage.getItem('userinfo')).token : '';
    if (token) {
        // 将token值发送到服务端
        config.headers.authorization = token;
    }

    return config
})

// 响应拦截
axios.interceptors.response.use(res => {
    // 响应拦截的逻辑
    // 统一打印响应数据
    console.group("本次请求地址：" + res.config.url);
    console.log(res);
    console.groupEnd();
    // 统一处理失败的情况
    if (res.data.code != 200) {
        Toast.show({
            content: res.data.msg
        })
    }
    return res;
})

// get请求
export const get = (url, params = {}) => {
    return axios({
        url,
        params
    })
}

// post请求
export const post = (url, params = {}, haveFile = false) => {
    let data = null;
    if (haveFile) {
        data = new FormData()
        for (let i in params) {
            data.append(i, params[i])
        }
    } else {
        data = qs.stringify(params)
    }

    return axios({
        url,
        method: 'post',
        data
    })
}